1. Field of the Invention
The present invention relates to an information processing apparatus and an information processing method.
2. Description of the Related Art
An information processing apparatus having a hardware device (hereinafter also referred to as a “device”), the hardware device maybe controlled using an operating system (OS) operating on the information processing apparatus.
An application program operating on the OS controls the hardware device via a device driver. If the application program operating on the OS directly controls the hardware device and a plurality of requests have been issued to the hardware device from a plurality of application programs, the application program may not determine which request is to be processed. In order to avoid this issue, an application program operating on the OS may control the hardware device via a device driver.
An OS operating on an information processing apparatus, during booting of the information processing apparatus, loads a device driver from a non-volatile storage unit (a hard disk, for example) on a volatile storage unit (a dynamic random access memory (DRAM), for example) to control a hardware device (see Japanese Patent Application Laid-Open No. 2001-34480, for example).
Reducing the time required to boot an information processing apparatus having a hardware device is a desired quality.
However, loading a device driver on a storage area (a storage area on a DRAM, for example) to operate the device driver during booting of the information processing apparatus, may require a significant amount of time to completely load the device driver. In particular, the data size of a device driver for a hardware device having a plurality of complex functions is large. Accordingly, the time taken to load such a device driver can be long.
In a method discussed in Japanese Patent Application Laid-Open No. 2001-34480, a plurality of device drivers are previously designated to inform an OS whether a particular device driver from the plurality of device drivers should be loaded at the time of booting an information processing apparatus or not to be loaded at the time of booting. For a device driver that is previously designated as not to be loaded at the time of booting, control is executed to load the device driver only when the device driver has been accessed.
Accordingly, the time taken to boot an information processing apparatus can be reduced compared to loading all of the device drivers that the OS operating on the information processing apparatus can load during booting of the information processing apparatus.
In the conventional method discussed in Japanese Patent Application Laid-Open No. 2001-34480, when an application program managed by the OS has accessed a device whose device driver has not been loaded, a compliant device driver is loaded. The application program waits until the device driver is loaded and a response is received from the OS. Accordingly, processing by the application program may be delayed.
When the application program has issued a request for configuration information indicating the configuration of a hardware device, the OS may notify only the configuration information to the application program.
However, the device driver to be loaded may include information other than the configuration information. Accordingly, the application program cannot receive the configuration information until other information is also loaded after loading the configuration information.